1. Field of the Invention
The present invention is related to a trace data compression system and a trace data compression method. This system and method provide for compressing and outputting address information for identifying an address for reading or writing operation of a microcomputer. The microcomputer performs predetermined processing and data information as operand data stored in the address, and a microcomputer capable of performing predetermined processing and implemented with a built-in trace data compression circuit for compressing trace data as processed by this predetermined processing.
2. Description of the Related Art
In recent years, with the rapid increase of microcomputer use, many machines have been equipped with microcomputer(s).A microcomputer is implemented within an IC chip on which are integrated all the necessary functional capabilities required for computing and processing a variety of information. Microcomputers are classified by the data width handled at once such as 4 bits, 8 bits, 16 bits, 32 bits. Microcomputers are used, as built-in devices, in vehicles, Digital TV, vacuum sweepers, microwave ovens, refrigerators, air conditioners, automobiles and other electric appliances.
A microcomputer can be connected to a personal computer and the like so that an engineer can program the microcomputer with the personal computer in order to implement predetermined processes. Therefore, verification (debugging) is inevitable, whether the program is exact or not. There are a variety of debug techniques such as measuring the time required for processing data, evaluating data as output after inputting and processing a test data stream, and the like. Furthermore, debugging techniques include data trace, i.e., obtaining a data access history to a memory, I/O ports and so forth.
FIG. 1 shows a prior art data trace system. The prior art data trace system as illustrated in FIG. 1 is composed of a target system 103 provided with an IC socket, an emulation chip (evaluation chip) 105 which is connected to the IC socket through a cable in place of a microcomputer as a test target and capable of performing the same processes as the microcomputer under test. A personal computer 101 traces input/output operations of the emulation chip. In this case, the personal computer 101 and the emulation chip 105 are referred to as a data trace information collection system.
However, in accordance with the data trace system as illustrated in FIG. 1, processes are performed by the emulation chip 105 capable of performing the same processes as the microcomputer rather than the microcomputer under test itself. The emulation chip 105 is fabricated on a circuit scale of from hundreds of thousands of gates to several millions of gates at a cost of from several million yen to several tens of million yen. Also, since the microcomputer under test is not directly debugged, it is impossible to perform sufficient debugging depending upon the accuracy of the emulation chip 105. Furthermore, there are difficulties in the connection between the emulation chip 105 and the IC socket. Furthermore, since a probe dedicated for this purpose is used for connection, the emulation chip sometimes does not operate properly due to cable noise.
A data trace system designed in order to solve these problems is illustrated in FIG. 2. In the data trace system as illustrated in FIG. 2, it is possible to trace data from the target system 103 through a DSU-ICE 102 by the use of a personal computer 101.
In the data trace system as illustrated in FIG. 2, it is possible to directly debug the microcomputer. Accordingly, as compared with the data trace system as illustrated in FIG. 1, there are advantages that the cost required for fabricating the emulation chip can be eliminated, that reliable debugging is possible by directly debugging the microcomputer and so forth.
However, in the case where a 32 bit microcomputer is debugged with the data trace system as illustrated in FIG. 2, seventy (70) output terminals have to be provided, i.e., 32 bits for address information, 32 bits for data (operand) information and 6 bits for status information. Because of this, the scale of a microcomputer tends to increase as well as increasing cost.
On the other hand, some microcomputers with fewer terminals are available. However, in the case of these types of microcomputers, trace information has to be broken up or dividen for outputting. From this, many cycles are required to output the entire information so that successive data is overlapped and therefore only a small proportion of the entire information is available for debugging.